package com.wlyuan.open.scanner.domain.carrier;

import com.wlyuan.core.domain.valueobj.UserId;
import com.wlyuan.open.scanner.domain.BaseDomain;
import com.wlyuan.open.scanner.domain.address.Address;
import com.wlyuan.open.scanner.utils.enums.AutoBalanceEnum;
import com.wlyuan.open.scanner.utils.enums.CarrierSubjectTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.List;

/**
 * @author lijing
 * @description
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString(callSuper = true)
public class Carrier extends BaseDomain {

    private Long id;

    @ApiModelProperty("承运方类型 0 线下 1 线上")
    private Integer type;
    @ApiModelProperty(value = "承运方名称")
    private String name;
    @ApiModelProperty(value = "简称")
    private String abbr;

    @ApiModelProperty(value = "联系人")
    private String contactName;
    @ApiModelProperty(value = "联系电话")
    private String contactMobile;
    @ApiModelProperty(value = "联系邮箱")
    private String contactEmail;
    @ApiModelProperty(value = "承运方状态")
    private Integer status;
    @ApiModelProperty("委托对账")
    private AutoBalanceEnum autoBalance;
    @ApiModelProperty("热度")
    private Integer hots;
    @ApiModelProperty("是否个体司机 0 否 1 是")
    private CarrierSubjectTypeEnum personal;

    @ApiModelProperty(value = "创建用户id")
    private UserId createBy;
    @ApiModelProperty(value = "修改用户id")
    private UserId updateBy;

    @ApiModelProperty(value = "站点地址信息")
    private List<Address> stationList;


    @ApiModelProperty("备注")
    private String comments;
    @ApiModelProperty("编号")
    private String code;
    @ApiModelProperty(value = "邀请词")
    private String welcome;

    @ApiModelProperty("下游租户id")
    private Long downstream;
    @ApiModelProperty("所属租户名称")
    private String tenantName;
}
